﻿using System;
using System.Globalization;
using System.Collections.Generic;
using System.Linq;
using System.Web;
using NUnit.Framework;
using bolsatrabajo.Dominio.DAO;
using bolsatrabajo.Persistencia.DAO;

namespace bolsatrabajo.Pruebas.DAO
{
    [TestFixture]
    public class pruebaPostulanteDAO
    {
        [Test]
        public void TestCrearPostulante()
        {
            Postulante nuevoPostulante = new Postulante();
            nuevoPostulante.Correo = "hhggfox@gmail.com";
            nuevoPostulante.Nombres = "Hector";
            nuevoPostulante.ApellidoPaterno = "Garcia";
            nuevoPostulante.ApellidoMaterno = "Garcia";
            nuevoPostulante.Sexo = "M";
            nuevoPostulante.FechaNacimiento = "23/05/2011";
            nuevoPostulante.Contrasena = "hhggfox2011";
            PostulanteDAO postulanteDAO = new PostulanteDAO();
            Postulante postulanteCreado = postulanteDAO.CrearPostulante(nuevoPostulante);
            Assert.AreEqual(nuevoPostulante.Correo, postulanteCreado.Correo);
        }
        [Test]
        public void TestObtenerPostulante()
        {
            String correoPostulante = "hhggfox99@gmail.com";
            PostulanteDAO postulanteDAO = new PostulanteDAO();
            Postulante postulanteEncontrado = postulanteDAO.ObtenerPostulante(correoPostulante);
            Assert.AreEqual(correoPostulante, postulanteEncontrado.Correo);
        }
        [Test]
        public void TestEliminarPostulante()
        {
            String correoPostulante = "hhggfox@gmail.com";
            PostulanteDAO postulanteDAO = new PostulanteDAO();
            postulanteDAO.EliminarPostulante(correoPostulante);
            Postulante existePostulante = postulanteDAO.ObtenerPostulante(correoPostulante);
            Assert.IsNull(existePostulante);
        }
        [Test]
        public void TestModificarPostulante()
        {
            Postulante actualizarPostulante= new Postulante();
            Postulante postulanteModificado = new Postulante();
            actualizarPostulante.Correo = "hhggfox@gmail.com";
            actualizarPostulante.Nombres = "Hector";
            actualizarPostulante.ApellidoPaterno = "Garcia";
            actualizarPostulante.ApellidoMaterno = "Valverde";
            actualizarPostulante.Sexo = "M";
            actualizarPostulante.FechaNacimiento = "23/05/2011";
            actualizarPostulante.Contrasena = "1011";
            PostulanteDAO postulanteDAO = new PostulanteDAO();
            postulanteModificado = postulanteDAO.ModificarPostulante(actualizarPostulante);
            Assert.AreEqual(actualizarPostulante.Correo, postulanteModificado.Correo);
        }
    }
}